\documentclass[10pt,a4paper]{article} 

\usepackage{ctex} % 中文支持
\usepackage[top=2.5cm, bottom=2.5cm, left=2.5cm, right=2.5cm]{geometry} % 页边距
\usepackage{amsmath, amssymb} % 数学公式与符号
\usepackage{graphicx, color, url}
\usepackage{listings} % 用于插入代码
\usepackage{xcolor}
\usepackage{enumitem}

% 代码块样式设置
\lstset{
    language=Python,
    basicstyle=\ttfamily\small,
    keywordstyle=\color{blue},
    commentstyle=\color{green},
    stringstyle=\color{red},
    backgroundcolor=\color{gray!10},
    frame=single,
    numbers=left,
    numberstyle=\tiny,
    showstringspaces=false,
    breaklines=true
}

\renewcommand{\lstlistingname}{代码}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{titling}
\setlength{\droptitle}{-2cm} % 标题上移

\title{《基础复分析》第5章复积分 - 编程实验}
\author{AI ET AL}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
\maketitle 

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\noindent\rule{\textwidth}{0.4pt}

\section{实验一：计算沿直线段的复积分}

\textbf{实验目的：} 使用Python计算复平面上沿直线段的复积分。

\textbf{实验内容：} 根据习题1，计算沿从 $0$ 到 $1+i$ 的线段的积分 $\int_{\gamma} x \, dz$.

% \textbf{Python代码：}
% \lstinputlisting[language=Python, caption=第1题的代码]{ex05_prob01.py}

\textbf{实验任务：}
\begin{enumerate}[left=4em]
    \item 运行代码并比较数值解与解析解
    \item 修改路径，计算从 $2$ 到 $2+3i$ 的积分 $\int_{\gamma} y \, dz$
    \item 尝试其他路径，如抛物线或折线
\end{enumerate}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\noindent\rule{\textwidth}{0.4pt}

\section{实验二：计算沿圆周的复积分}

\textbf{实验目的：} 使用Python计算沿圆周的复积分，验证留数定理。

\textbf{实验内容：} 根据习题2，计算 
$\displaystyle \int_{|z|=2} \frac{dz}{z^2 - 1}$.

% \textbf{Python代码：}
% \lstinputlisting[language=Python, caption=第2题的代码]{ex05_prob02.py}

\textbf{实验任务：}
\begin{enumerate}[left=4em]
    \item 运行代码并比较数值解与解析解
    \item 尝试改变圆的半径，观察积分值的变化
    \item 计算 $\displaystyle \int_{|z|=2} \frac{dz}{z^2 + 3z}$ 并验证结果
\end{enumerate}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\noindent\rule{\textwidth}{0.4pt}

\section{实验三：验证Cauchy积分公式}

\textbf{实验目的：} 验证Cauchy积分公式和高阶导数公式。

\textbf{实验内容：} 根据习题4，计算 $I=\displaystyle \int_{|z|=2} \frac{e^z}{z^n} \, dz$ 并验证Cauchy积分公式。

% \textbf{Python代码：}
% \lstinputlisting[language=Python, caption=第4题的代码]{ex05_prob04.py}

\textbf{实验任务：}
\begin{enumerate}[left=4em]
    \item 编写程序，使用复积分的定义计算积分 $I$
    \item 编写程序，使用高阶导数公式 $\displaystyle f^{(n)}(a)=\frac{n!}{2\pi i} \int_{|z|=2} \frac{f(z)}{(z-a)^{n+1}}dz$ 计算积分 $I$
    \item 验证对其他解析函数（如 $f(z) = \sin z,\, z^3+2z$）的积分公式
\end{enumerate}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\noindent\rule{\textwidth}{0.4pt}

\section{实验总结}
通过这三个编程实验，我们：
\begin{itemize}
    \item 学会了如何用Python进行复积分的数值计算
    \item 验证了留数定理在计算复积分中的应用
    \item 验证了Cauchy积分公式及其在计算解析函数导数中的应用
    \item 理解了积分路径与被积函数奇点之间的关系
\end{itemize}

\end{document}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%